﻿using System;
using System.Collections;

/**
 * JIT:Just-In-Time 动态编译
 * AOT:Ahead-of-time 静态编译
 * 在iOS平台中Mono是以Full AOT模式运行的，无法使用JIT引擎：
 * 运行时禁用的特性
 * 以下特性在 iPhone 的 Mono 运行时被禁用：
    分析器 Profiler；
    发射 Reflection.Emit；
    发射保存 Reflection.Emit.Save；
    COM 绑定；
    JIT 引擎；
    元数据验证（因为没有 JIT）
 */

/**
 * 反向回调
 * 在标准的 Mono 中， 可以将 C#  的委托实例传递给非托管代码， 用于替换函数指针。  运行时通常会将函数指针转换， 允许非托管代码回调托管代码。
 * 这个转换的 Mono 中是通过 JIT 编译器实现的。 当使用 iPhone 需要的 AOT 编译器时， 有两个限制：
 * 1.回调函数必须标记为 MonoPInvokeCallbackAttribute；
 * 2.回调函数必须是静态的， 现在还不支持实例函数 （这个限制以后会移除）
 */
//public sealed class MonoPInvokeCallbackAttribute : Attribute
//{
//    public MonoPInvokeCallbackAttribute(Type t)
//    {
//    }
//}
